﻿Imports StartFrame.Web.BR
Imports StartFrame.Web.BR.Helpers
Imports StartFrame.BR.Web.Helpers

Namespace Mantenimiento.Precios

    Public Class ListPrecio
        Inherits JsonAbm

        ''' <summary>
        ''' Esta clase se encarga de la administración de los reportes o consultas contempladas por la aplicación.
        ''' </summary>
        ''' Constructor
        Sub New()
            MyBase.New(Operador, Password, "XRListPrecio", "App_lista", "nombre")
            MyBase.lnk_nombreOperador = Common.Env.Operador
            'Graba tracking
            Me.lnk_Tracking = True
        End Sub

        Public Overrides Function List(Start As Integer, Limit As Integer, Orden As String, Filtro As String) As String
            Dim oFiltro As FiltroColeccion = FiltroColeccion.Parse(Filtro)
            If Common.GrupoOperador.ID.Trim().ToUpper() <> "ADMIN" Then
                oFiltro.AgregarEQFilter("id_entidad", Common.EntidadOperador.ID)
            End If
            Return MyBase.List(Start, Limit, Orden, oFiltro.ToJSON())
        End Function

        Public Function ObtenerEntidadesPorCategoria(CategoriaId As String) As String
            Return Serializer.Serialize(DA.Sql.Select(Common.Env.ConnectionString, "*", "App_entidad", String.Format("id_perfil = 'C' AND id_categ_entidad = '{0}'", CategoriaId)))
        End Function

        Private Sub ListPrecio_Insertando(ByRef cancela As Boolean, ByRef row As System.Data.DataRow) Handles Me.Insertando
            row("id_usuario") = Common.Env.Operador
        End Sub

        Public Sub GuardarListaEntidades(IdLista As String, Entidades As String)
            Dim ar As New ArrayList()
            ar.Add(IdLista)
            ar.Add(Entidades)
            DA.Sql.ExecSP(Common.Env.ConnectionString, "wp_Actualizar_Lista_Precio", ar)
        End Sub
    End Class

End Namespace
